package com.tbit.main.service;

import com.tbit.main.pojo.MainCar;

import java.util.List;

/**
 * @author LMY
 * @create 2021-04-08 10:39
 * 运维车辆
 */
public interface MainCarService {

    /**
     * 根据车辆编号查询
     *
     * @param machineNO
     * @return
     */
    MainCar getByMachineNO(String machineNO);

    /**
     * 根据车辆id查询
     *
     * @param mainCarId
     * @return
     */
    MainCar getByMainCarId(Integer mainCarId);

    /**
     * 根据中控编号查询
     *
     * @param mainCarNO
     * @return
     */
    MainCar getByMainCarNO(String mainCarNO);

    /**
     * 插入
     *
     * @param mainCar
     */
    void insert(MainCar mainCar);

    /**
     * 修改
     *
     * @param mainCar
     */
    void update(MainCar mainCar);

    /**
     * 删除
     *
     * @param mainCarId
     */
    void del(Integer mainCarId);

    /**
     * 根据运营区域查询所有
     *
     * @param accountId
     * @return
     */
    List<MainCar> getByAccountId(Integer accountId);

    /**
     * 根据运营区域查询车辆编号
     *
     * @param accountId
     * @return
     */
    List<String> getNOByAccountId(Integer accountId);

    /**
     * 根据运营区域查询所有车辆id
     *
     * @param accountId
     * @return
     */
    List<Integer> getByCarIds(Integer accountId);

    /**
     * 批量更新
     *
     * @param mainCars
     */
    void updateBatch(List<MainCar> mainCars);

    /**
     * 获取所有设备编号
     *
     * @return
     */
    List<String> getAllMachineNO();

}
